CC = g++
COMPILE = $(CC) -O2 -c -Wall -ansi
LINK = $(CC)
OBJSF = variables.o utils.o buffermanager.o directorymanager.o filemanager.o final.o

build: $(OBJSF)
	$(LINK) -o final $(OBJSF)
	rm -f *.o prova
	cp prova_clean prova
	./final < ./Atenea/exemple-mini.file > log

final.o: final.cpp
	$(COMPILE) final.cpp

buffermanager.o: buffermanager.cpp
	$(COMPILE) buffermanager.cpp

directorymanager.o: directorymanager.cpp
	$(COMPILE) directorymanager.cpp

filemanager.o: filemanager.cpp
	$(COMPILE) filemanager.cpp

variables.o: variables.cpp
	$(COMPILE) variables.cpp
	
utils.o: utils.cpp
	$(COMPILE) utils.cpp

map:
	../Utilitats/MapDisk prova 0 -hex

od:
	od -xa ./prova

disk:
	../Utilitats/CreateDisk prova 4096 -zeros

fin:
	rm -f prova
	cp prova_clean prova
	./final < ./Atenea/exemple-4.file > log

clean:
	rm -f *.o final prova
